package com.edu.boot.jpa;


import java.util.Arrays;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.domain.EntityScan;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
import org.springframework.data.web.config.EnableSpringDataWebSupport;
/**
 * spring boot 的启动入口
 * @author xl
 *
 */
@EntityScan(value="com.edu.boot.jpa")//如果不加，spring boot默认情况是去 SpringApplication.run(App.class, args)指定的类所在的包和子包中扫描entity,找不到会报错。可以指定多个包
@EnableJpaRepositories(basePackages="com.edu.boot.jpa")//同上，若找不到就不会生成实现类
@EnableSpringDataWebSupport //支持web
@SpringBootApplication(scanBasePackages="com.edu.boot.controller")//扫描controller源上要加注解,默认扫描本包和子包
public class App {
	public static void main(String[] args) {
		ConfigurableApplicationContext context = SpringApplication.run(App.class, args);//参数一是springboot的源
		UserRepository ur = context.getBean(UserRepository.class);
//		User user = new User();
//		user.setUsername("name");
//		user.setGender("male");
//		user.setAge(55555);
//		ur.save(user);
		System.out.println(ur.findOne(1));
		ur.findAll().forEach(System.out::println);
		ur.listA().forEach(System.out::println);
		ur.listB().forEach(System.out::println);
		Arrays.asList();
		//context.close();//如果是web项目就不能关闭
	}
}
